The present invention relates to congestion control in a communications network and, more particularly, to congestion control in an asynchronous transfer mode (ATM) network through enhanced partial packet discard. One method of congestion control known in the art is referred to as partial packet discard (PPD). In the most basic form of PPD, once an ATM switch has dropped a cell of a packet from a connection, the switch should continue dropping cells for that connection up to, but excluding, the end-of-packet (EOP) cell, which is the last cell of the packet. The theory is that once any cell of a packet has been discarded, the balance of the cells in that packet are useless since ATM Adaptation Layer #5 (AAL5), the AAL commonly used for data traffic, is unable to reconstruct the packet. There is no point in transmitting the remaining cells in a packet when an ATM switch has knowingly discarded one cell in that packet, and doing so would only further contribute to network congestion.
Little has been written about PPD since introduction of a different more effective congestion control scheme known as early packet discard (EPD). However, the combination of EPD and PPD may offer the best performance, so some relevance to improving PPD remains. Most current interest in PPD assumes that only the EOP cell of a packet, the cell marked by AAL5 during the translation between packets and cells, is identifiable. Many of the issues with PPD design hinge on the assumption that the receiver has an overall integrity check on the packet (e.g., CRC in the case of AAL5) and cannot identify a whole packet after it has been spliced with other data, which is what would happen if an EOP cell were dropped.
Artisans using conventional PPD disagree over the proper treatment of EOP cells. While some counsel a safe approach--the unconditional admittance of EOP cells, others support the opposite train of thought--that EOP cells can always be dropped. Both approaches, however, have attendant disadvantages. Despite the unquestionable safety of the former approach, it is not optimal since the presence of EOP cells contributes to the amount of network traffic. The latter strategy, always dropping the EOP cells, is worse since it causes the subsequent packet to be discarded at the AAL receiver.
It is, therefore, desirable to provide an improved partial packet discard strategy which accomodates both admitting and discarding EOP cells. It is even more desirable to improve network performance through an enhanced partial packet discard congestion control by identifying situations in which an EOP cell can be dropped, thereby reducing the amount of wasted buffer space and network bandwidth. An additional desire is to specify the proper course of action when the EOP itself cannot be admitted and must also be dropped, and to improve network performance by reducing the likelihood of having to drop EOP cells.